<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script>
        // 1.集合set : set数据里的值是不能重复的(键名不能重复)

        let set = new Set([1,2,3,{name:'张三',age:21},{name:'张三',age:21}]);
        // console.log(set);

        // set方法
        // console.log(set.size);

        // 添加键值
        // set.add(4)
        // console.log(set);

        // 删除 delete 删除特定值的元素
        // set.delete(2)
        // console.log(set);

        // 清除 clear 删除所有元素
        // set.clear()
        // console.log(set);

        // keys 和 values 在这里是两一样
        // console.log(set.keys(),set.values());//看不懂输出
        //输出的是迭代对象

        // 判断是否有某个值 has
        // console.log(set.has(2));//true

        // 数组去重
        let arr = [1,2,1,3,4,5]
        let set_arr = new Set(arr);
        arr = [...set_arr]
        console.log(arr);

        //字符串去重
        var str = 'aaceabababadafasd'
        let arr_str = [...str]
        // let arr_str = str.split('')
        console.log(arr_str);
        let set_str = new Set(arr_str)
        arr_str = [...set_str]
        str = arr_str.join('')
        console.log(str);

</script>
</body>
</html>